Created for the 9th 1-BIT JAM, this game was created and submitted within a week
with myself as the sole developer. The constraint was we could only use two colours
and the theme was Captailism.
Dude! Help Me Up! Recieved 8 ratings during the course of the game jam and placed
12th for gameplay out of 50 submissions.
The theme for the game jam was Capitalism, with a restriction that I could only use two colours. I knew immediately that I wanted to do something that emphasised mechanics since a resource-based game would take too long to balance. One talking point regarding capitalism is how people can be taken advantage of, and I felt I could show this in my main gameplay loop.
The idea is that the game would be a lite-rage game inspired by Jump King, where the player would have to climb the corporate ladder by using the people they work with by “collecting” them and placing them down as stepping stones to get higher.
I used Unity 2D as my engine of choice since I was familiar with it and used the tilemap system to be able to block out levels quickly. I developed a character controller and a platform, and I had my rudimentary testing grounds! I also decided to go with white and blue as my colour palette and created a placeholder player sprite.
Character movement and first art pass
Dialogue showcase
I started working on a dialogue system so I could use it to teach players the controls of the game during key moments. I also thought it would be a nice addition to give some of the NPCs some personality when the player walks up to them.
I also added onto the character controller by adjusting the amount of air control the player, reducing it and adding my own friction, so the player can stop faster when they stop hitting the movement keys. The former makes the platforming a reasonable challenge, while the latter allows the player to not get punished for landing on a platform but sliding off in the process.
I also added the main mechanic which I called “Place”, it allows the player to place any NPCs they collected directly underneath their feet to stand on but only while in the air. They would use this mechanic as the main way to progress through the levels.
I started with recreating the player sprite and creating animations for movement. I used Aseprite to create the frames and I took those into Unity and created the idle, walking, and animations in-engine. While in Aseprite I also took the time to create the NPCs and accessories to stylize the NPCs a bit more.
New animations on NPC
Once that was done, I added a new mechanic I called “Throw” which allowed the player to throw an NPC instead to which they can jump to and cross large gaps. While I was testing this mechanic, I realized that this is fundamentally the same as the “Place” mechanic so started to brainstorm other ways a “Throw” could work.
This was a short day, but I had an idea on how to repurpose the “Throw” mechanic. Instead of using it to cross gaps, I decided that it would be used to throw the NPCs to break walls that are blocking the player’s path.
New "Throw" mechanic
Title screen
I created breakable walls that would react to a thrown NPC and would break if one was thrown at it. I think it turned out well..
I finished out the day by adding a start screen that would serve as the landing screen for the game.
Now that the mechanics are out of the way, I can start designing the levels. I started with 3 levels as a side-scroller that taught the players movement and jumping then it would transition into vertical levels where to progress you had to reach the top of the screen. The vertical levels are where I would introduce “Collecting”, “Placing”, and “Throwing” each in that order. I finished the first half of the levels and tweaked the character the controller a little bit to fit the metrics of the tilemap.
How the dialogue will be used to teach the player the mechanics
The later levels were the goal for today; I wanted to these levels to test and challenge the player on using the mechanics. Some examples I did were to use the “Place” mechanic multiple times in succession or using the “Place” mechanic to position themselves to “Throw” an NPC.
While finishing up the levels, I thought adding some slopes would add some challenge and depth to the platforming. Once I added my own physics to the slopes, they would now cause the player to slide off if they landed on or attempted to walk up any slope.
On the last level, I added a cutscene using Unity’s keyframe animation system. This would play once the player reaches the top and acted as the end condition for the game. It would also display some of the player’s stats like completion time and how many times they interacted with each mechanic.
Slopes sliding the player off the platform
Last day was primarily focused on polishing and fixing any outstanding buys. I first added sound effects which I used Freesounds.org to collect some. I took most of the sounds into Reaper, an audio editing software, to trim or adjust the pitch/reverb for specific cases.
I moved onto UI and added a collected NPC count in the top right corner so players can see how many people they have collected and a button prompt icon for when the player is close enough to collect an NPC.
I then added dialogue for NPCs that would appear once the player got close enough to collect and disappear if the player collected them. Then lastly, I animated the start screen by having NPCs falling in the background.